Global Struggle: The Fight Between Adolescent Life and Death
Spring 2025 | BAA1030 Data Analytics & Storytelling (20074) Student Name: Garima Sahu Student ID: A00013327 Programme: MSc in Management (Strategy) With deep gratitude to Professor Dr. Damien Dupre, Dublin City University, for his invaluable support and insight.
Executive Summary
This report dives into the global crisis of adolescent mortality using current datasets from UNICEF, the World Bank, and WHO. We examine how demographic, economic, health, and gender-based factors intersect to shape outcomes for young people between the ages of 10 and 19.
Through a series of powerful data visualizations, we reveal key patterns, spotlight the world’s most vulnerable populations, and offer policy recommendations aligned with SDG 3 (Good Health and Well-Being) and SDG 10 (Reduced Inequalities).
The aim is clear: to turn data into action that can save lives.
Introduction
Adolescence is supposed to be a time of growth and potential. But in many parts of the world, it’s a time of survival. Millions of adolescents die each year from preventable causes—an invisible crisis with devastating consequences.
This report brings visibility to those young lives, lost too soon. By exploring global datasets, we uncover how adolescent mortality is shaped by geography, gender, deprivation, and development—and what can be done about it.
Visual Analysis and Insights
1. World Map: Global Distribution of Adolescents
Title: Where the Youth Are: Global Share of Adolescent Population
Insight:
Over 60% of the world’s adolescents live in Asia and Sub-Saharan Africa—regions facing some of the highest youth mortality rates. This concentration demands urgent attention from global policymakers.
- Asia: 42%
- Sub-Saharan Africa: 21%
- Latin America: 10%
- Other Regions: 27%
2. Bar Chart: Global Distribution of Adolescents
Title: National Breakdown of Adolescent Populations
Code
library(tidyverse)library(scales)# Clean and get top 10 countriestop10_country_summary <- country_summary %>%filter(!is.na(TotalPopulation) & TotalPopulation >0) %>%arrange(desc(TotalPopulation)) %>%slice_head(n =10)# Create horizontal bar chart (country-only, no region color)ggplot(top10_country_summary, aes(x =reorder(country, TotalPopulation), y = TotalPopulation)) +geom_bar(stat ="identity", fill ="steelblue") +coord_flip() +labs(title ="Top 10 Countries by Adolescent Population",x ="Country",y ="Adolescent Population" ) +scale_y_continuous(labels = comma) +theme_minimal() +theme(axis.text.y =element_text(size =10) )
Insight:
India, China, Nigeria, and Pakistan bear the highest burden of adolescent deaths globally. Their large youth populations and systemic health gaps make them critical focus areas for targeted interventions.
3. Stacked Bar Chart: Gender Distribution of Mortality Across Countries
Code
library(tidyverse)library(scales)# Load the datagender_mortality <-read_csv("docs/unicef_indicator_1.csv")# Clean and renamegender_mortality <- gender_mortality %>%rename(Country = country,Gender = sex,MortalityRate = obs_value ) %>%filter(!is.na(MortalityRate))# Filter to latest year per Country and Genderlatest_year_data <- gender_mortality %>%group_by(Country, Gender) %>%filter(time_period ==max(time_period)) %>%ungroup()# Calculate total mortality to find top 5 countriestop_5_countries <- latest_year_data %>%group_by(Country) %>%summarise(Total =sum(MortalityRate, na.rm =TRUE)) %>%arrange(desc(Total)) %>%slice_head(n =5)# Filter to top 5 countries onlytop_gender_mortality <- latest_year_data %>%filter(Country %in% top_5_countries$Country)# Reorder country factor for plottingtop_gender_mortality <- top_gender_mortality %>%mutate(Country =factor(Country, levels = top_5_countries$Country))# Plot stacked bars with gender-specific labelsggplot(top_gender_mortality, aes(x = Country, y = MortalityRate, fill = Gender)) +geom_bar(stat ="identity") +geom_text(aes(label =comma(round(MortalityRate))),position =position_stack(vjust =0.5),color ="white",fontface ="bold",size =4 ) +labs(title ="Gender Divide: Who's at Greater Risk? (Top 5 Countries)",x ="Country",y ="Adolescent Mortality Rate (per 100,000)" ) +scale_y_continuous(labels = comma, expand =expansion(mult =c(0, 0.05))) +theme_minimal() +theme(axis.text.x =element_text(angle =45, hjust =1))
Insight:
In high-mortality countries, boys face greater risks from violence, conflict, and road injuries, while girls are more vulnerable to maternal health complications.
- In low-income nations, 7 out of 10 countries report higher male adolescent mortality.
4. Scatter Plot: Life Expectancy vs Adolescent Mortality Rate
Code
library(readr)library(dplyr)library(ggplot2)# Load datasetslife_df <-read_csv("docs/unicef_metadata.csv")mortality_df <-read_csv("docs/unicef_indicator_1.csv")# Prepare life expectancy datalife_df <- life_df %>%distinct(country, .keep_all =TRUE) %>%select(country, `Life expectancy at birth, total (years)`) %>%rename(Country = country,LifeExpectancy =`Life expectancy at birth, total (years)` )# Prepare and aggregate mortality data (e.g., average per country)mortality_df <- mortality_df %>%group_by(country) %>%summarise(AdolescentMortalityRate =mean(obs_value, na.rm =TRUE)) %>%rename(Country = country)# Join datasetsmerged_df <-inner_join(life_df, mortality_df, by ="Country")# Plotggplot(merged_df, aes(x = LifeExpectancy, y = AdolescentMortalityRate)) +geom_point(color ="steelblue", alpha =0.7) +geom_smooth(method ="lm", se =FALSE, color ="red") +labs(title ="The Life-Death Link: How Longevity Reflects Youth Survival",x ="Life Expectancy (Years)",y ="Adolescent Mortality Rate (per 100,000)" ) +theme_minimal()
Insight:
Countries with high life expectancy consistently show lower adolescent mortality rates. This reflects broader systems of health, safety, and social investment.
- Pearson’s correlation: -0.72
- High-life-expectancy countries like Japan and Norway report mortality rates <10 per 100,000
- Low-life-expectancy nations like Chad and CAR report rates >300
5. Line Chart: Adolescent Deprivation Over Time (2010–2022)
Code
library(readr)library(ggplot2)library(dplyr)library(plotly)library(htmlwidgets)# Read datadeprivation_trend <-read_csv("docs/unicef_indicator_2.csv")# Rename and preparedeprivation_trend <- deprivation_trend %>%rename(Year = time_period,DeprivationRate = obs_value ) %>%mutate(Year =as.numeric(Year))# Aggregate deprivation by year (mean)trend_summary <- deprivation_trend %>%group_by(Year) %>%summarise(DeprivationRate =mean(DeprivationRate, na.rm =TRUE))# Create ggplotp <-ggplot(trend_summary, aes(x = Year, y = DeprivationRate)) +geom_line(color ="firebrick", size =1.2) +labs(title ="Poverty’s Grip: Trends in Adolescent Deprivation",x ="Year",y ="Average Deprivation Rate (%)" ) +theme_minimal()# Convert to interactive plot and remove all branding with JSplotly_obj <-ggplotly(p)plotly_clean <- htmlwidgets::onRender( plotly::config(plotly_obj, displayModeBar =FALSE, displaylogo =FALSE),"function(el) { var logo = el.querySelectorAll('.modebar-group .logo-text'); if (logo.length > 0) { logo[0].parentNode.removeChild(logo[0]); } }")plotly_clean
Insight:
Global deprivation rates among adolescents have declined over the last decade, but conflict zones have seen spikes. The pandemic also stalled progress in several regions.
- Global decline: 15% from 2010 to 2022
- Increase observed in Yemen, South Sudan, and Venezuela during periods of instability
6. Horizontal Bar Chart: Leading Causes of Adolescent Mortality
Code
library(readxl)library(tidyverse)library(scales)# Step 1: Load all columns as character to avoid type conflictsdeath_factors <-read_excel("docs/Factors accefting death for ado.xlsx", col_types ="text")# Step 2: Pivot and clean the datacause_summary <- death_factors %>%pivot_longer(cols =-Country, names_to ="Cause", values_to ="DeathCount") %>%filter(!is.na(DeathCount) &!DeathCount %in%c("−", "–", "x", "", "NA")) %>%mutate(DeathCount =as.numeric(DeathCount)) %>%group_by(Cause) %>%summarise(TotalDeaths =sum(DeathCount, na.rm =TRUE), .groups ="drop") %>%arrange(desc(TotalDeaths)) %>%slice_head(n =5)# Step 3: Plot with data labelsggplot(cause_summary, aes(x =reorder(Cause, TotalDeaths), y = TotalDeaths)) +geom_bar(stat ="identity", fill ="tomato") +geom_text(aes(label =comma(round(TotalDeaths))), hjust =-0.1, size =3.5, color ="black") +coord_flip() +labs(title ="Top 5 Causes of Adolescent Deaths",x ="Cause of Death",y ="Total Deaths" ) +scale_y_continuous(labels = comma, expand =expansion(mult =c(0, 0.15))) +theme_minimal()
Insight:
Road injuries, lower respiratory infections, suicide, and maternal conditions dominate adolescent mortality. Many of these causes are preventable with timely healthcare and awareness.
Top 5 Causes Globally (per WHO):
- Bulling 2010-2017 - Alcohol use 2016 - Overweight 2016 - Tobacco use 2013−2017 - Intimate Partner Violence 2010−2018
Recommended Policy Actions
Invest in adolescent-centered primary healthcare in low-income and post-conflict regions.
Implement gender-specific programs, especially targeting risks faced by boys (violence, road safety) and girls (maternal care).
Increase global aid to countries scoring highest on the vulnerability index, guided by data.
Promote health literacy in schools, especially around mental health, sexual and reproductive rights, and disease prevention.
Conclusion
This data story reveals a sobering truth: adolescent mortality is neither random nor unavoidable—it’s shaped by structural inequities that we can address.
By aligning economic investment, health policy, and global development priorities, we can rewrite this story. We can ensure that adolescence is no longer defined by death, but by opportunity, growth, and the promise of a better future.